Communications networks can be used to deliver data that includes video, audio and other types of information. Video content, audio content and other information types can be encoded in a variety of different ways. In many cases, data encoded using a particular coding technique will require a specific type of software and/or hardware to decode that data and to recover the encoded information. For example, a movie, television program or other audiovisual work may have associated video content (e.g., a series of image frames) and associated audio content (e.g., the soundtrack). The video content might be encoded into a first set of data using a first video CODEC (COder DECoder) and into a second set of data using a second video CODEC. In order to render the video content from the first set of data, a device receiving the first data set would need to process that data using the first video CODEC. Rendering the video content from the second set of data would similarly require the second CODEC. An analogous situation can exist with regard to encoding the audio content using different audio CODECs.
If a network has numerous end devices using different combinations of video CODECs and audio CODECs, it is desirable to transmit (or at least make available) data compatible with each type of CODEC. Conventionally, this has been achieved through “blob” encoding a separate data stream for each possible combination of consumable data. As a simple example, a network may serve some end devices using video CODEC 1 and audio CODEC 1, may serve other devices using video CODEC 1 and audio CODEC 2, still other devices using video CODEC 2 and audio CODEC 1, and yet other devices using video CODEC 2 and audio CODEC 2. Under conventional practice, the network might create and store four different data blobs for a particular audiovisual work. The first blob would include data encoding the video content with video CODEC 1 and audio content with audio CODEC 1, the second blob would include data encoding the video content with video CODEC 1 and audio content with audio CODEC 2, etc. As the number of different data encodings or other data types increases, this approach can become quite unwieldy. For example, an audiovisual work having 8 possible types of video encodings, 2 possible types of audio encodings, and 3 possible types of enhancement layer data could require as many as 286 data blobs to provide all possible combinations of a video encoding, an audio encoding and an enhancement layer data type.